package com.xl.singletonPattern;

/**
 * 单例模式-（懒汉式）
 */
public class Singleton {
    //1.静态变量保存唯一实例
    private static Singleton singleton;

    //2.私有化构造方法，防止外部通过new创建实例
    private Singleton() {
        System.out.println("创建实例...");
    }

    //3.提供静态方法获取唯一实例
    public static Singleton getInstance() {
        if (singleton == null) {
            singleton = new Singleton();
        }
        return singleton;
    }

    //4.业务方法
    public void showMessage() {
        System.out.println("Hello, I am a Singleton");
    }
}
